說真的,管理自己或公司專案上寫的通用元件或javascript檔案是很麻煩的一件事,元件的安裝也是件麻煩事,而更新又是一個更麻煩的事,前陣子看到黑大的架設私房NuGet Server,感覺就像看到銀子彈一樣,最新就在公司架了起來,將元件都上傳到私人NuGet Server,三件麻煩事都解決了。
說真的,管理自己或公司專案上寫的通用元件或javascript檔案是很麻煩的一件事,元件的安裝也是件麻煩事,而更新又是一個更麻煩的事,前陣子看到黑大的架設私房NuGet Server,感覺就像看到銀子彈一樣,最新就在公司架了起來,將元件都上傳到私人NuGet Server,三件麻煩事都解決了。
安裝NuGet Server
1.NuGet Server必需透過NuGet下載,首先打開Visual Studio 2010。
2.建立空白網站應用程式專案。
3.安裝NuGet.Server,這一個版本跟官方的完全不同,是官方的非常精簡版,只有上架、下載、搜尋等等功能而以。
修改Web.Config
<appSettings><!--
Set the value here to allow people to push/delete packages from the server.
NOTE: This is a shared key (password) for all users.
-->
<add key="apiKey" value="B1EDB7E9-3C9D-4EFA-A5B7-778854809C35" />
<!--
Change the path to the packages folder. Default is ~/Packages.
This can be a virtual or phsyical path.
-->
<add key="packagesPath" value="" />
</appSettings>
設定apiKey,apiKey的值一定要為GUID,可以使用Visual Studio>Tools>Create GUID工具產生,NuGet.Server的特性是所有人都可以下載nupkg檔案,但只有apiKey的人才能上傳nupkg檔,這一點與官方的操作模式相同,如果想要限制下載,可參考黑大的NuGet 1.5! 企業"私服"不是夢。
5.佈署到IIS上就完成了。
設定Package Sources
1.Package Sources選項設定可以從下列三個地方開啟:
I.Tools > Library Package Manager > Package Manager Settings > Package Sources
II.Tools > Options > Package Manager > Package Sources
III.於方案總管中在專案上按右鍵 > NuGet Package Manager > 左下角Settings按鈕 > Package Sources
2.輸入Package Source後新增
註:設定值是放在%USERPROFILE%\AppData\Roaming\NuGet\NuGet.Config,有考慮寫個批次檔或PowerShell去修改這個檔案,讓公司同事可以一鍵設定,但還沒寫。
3.之後就可以在NuGet Package Manager中看到自己上傳的元件。
備份與簡易管理
剛有說過NuGet.Server是非常精簡平台,連資料庫都沒有,完全以資料夾的方式管理,預設是放在~\Packages資料夾下,放一個nupkg就是新增,拿掉一個nupkg就是刪除,備份或要搬家只要複制資料夾下的所有nupkg就可以了。
原始發佈:http://www.dotblogs.com.tw/wadehuang36/archive/2011/10/06/nuget-server.aspx
可以簡單的介紹一下
NuGet Server
事做甚麼用的嗎? 謝謝您。
他是一個單純的repository還是具有版本控制等功能呢?
他是存放Library包的Server,有版本控制,但是是使用者自己決定版本號,可以使用NeGet Client下載安裝Library,有跟Visual Studio整合,可以比較輕鬆的將組件加入專案的參考中